/* p_node.h */

#ifndef DODO_P_NODE_H
#define DODO_P_NODE_H

#include <dodo_plot/kernel/plotfwd.h>
#include <dodo_plot/kernel/position.h>

namespace dodo_plot
{
class P_Node
{
	friend class Picture;
protected:
	P_Node();
	virtual ~P_Node();

	virtual double height() const = 0;
	virtual double width() const = 0;
	virtual Position local_pos() const = 0;
	virtual void draw(const Plotter& plotter) const = 0;
//	std::string& name();
private:
	int use_count_;
//	std::string name_;
};

}

#endif //DODO_P_NODE_H
